MFJames - Wednesday, January 12, 2011 4:00 PM:
I have very slowly and carefully worked through all the guides to install an evaluation stand-alone copy of Innovator on an XP machine. I have installed/configured/checked/everything-else-advised .NET, IIS, SQL Server, IE8 and Innovator itself.
When I point my IE8 browser at localhost/InnovatorServer all I get is a blank screen, and a pop-up error message:
Message: Specified cast is not valid.
Line: 40
Char: 7
Code: 0
URI: localhost/.../
The offending code the "if" statement in:
var ieClient = document.getElementById("ieClient").object;
if (!ieClient)
What did I miss?
----
Martin James
Ronan - Thursday, January 13, 2011 1:06 PM:
I've met lots of startup error messages but not this one.
Do you have any IE addons that could interfere at this point and cause the getElementById to fail?
What are the results with IE7? (you can install it aside IE8 with IECollection).
Also, could you give more details on your setup? Aras/Windows/etc versions, ...
MFJames - Saturday, May 28, 2011 12:10 PM:
Solved !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
There is a bug in the Aras code, in /Client/default.aspx and/or the associated module ieClient.dll..
I have no idea what the offending piece of code is trying to do, or why it doesn't work. But i do know that if I disable part of the code in default.aspx, the Aras client runs perfectly happily, and with no obvious side effects. I can only assume that whatever it is trying to do is unnecessary :-)
Anyway, if you get the error "Specified cast is not valid" before the login window pops up, what you need to do is:
- On the server machine, open the file /Client/default.aspx in your favorite text editor (e.g. Notepad).
- About half way down, locate the line: var thisBrowserOrTab = ieClient.Start();
- Change it to: var thisBrowserOrTab = false;
- Save the file.
I have no idea what I've done, and quite frankly, after 5 wasted months, I don't care! Aras now works. And if anybody from Aras cares to read this posting some day, and fix the product itself, maybe a few more "lost" customers will give it another go.
--
Martin James
MFJames - Thursday, January 13, 2011 3:21 PM:
Looking at the code, my error means that it didn't even try to load its first DLL (IEClient.dll), so the return code was undefined. So I tried some experiments, and I've managed to limp on by literally one step.
I changed the IIS execute permissions for the site from "scripts only" to "scripts and executables". Now it at least tries to load the dll...
...but fails.
The script error has gone away, and been replaced by an Aras-generated message:
Aras Innovator client has failed to initialize.
Some required controls('IEClient.dll') were not loaded. Reinstalling application may solve this problem.
Well, I know the DLLs are there because I can see them!
Setup:
- Windows XP sp3 with IIS
- Aras 9.2.0 (downloaded yersterday)
- .NET 2.2.30279, 3.5.SP1 and 4.0.30319 (I've tried them all!)
- Microsoft SQL Server 2005
- Internet Explorer 8.0.6001,18702CO (Also tried, with identical results, 7.00.5730.13 and 6.00.2900.2180.)
For the installation I used all names and settings exactly as in the Aras documentation. The one single exception was that I installed Aras to a directory on my D: drive (second hard drive).
----
Martin James
laich - Wednesday, June 1, 2011 10:30 PM:
Thanks very much James, I have exactly the same problem after I upgrade my company's laptop from IE6 to IE8.
I think Aras should release more patch to evaluation edition.
The error may deal with a few version of IE8 only. Some of the IE8 on the company does not have the problem.
BTW, I add more code on your solution to make a new window open without toolbar and address bar. Here is the code:
// the following are additional lines of code to open a new window window toobar and address bar
if (window.name != "_new_innovator_win")
{
loginWindow = window.open("default.aspx", "_new_innovator_win", "location=0,status=0,ToolBar=0,width=<%=login_window_width%>,height=<%=login_window_height%>");
var width = <%=login_window_width%>;
var height = <%=login_window_height%>;
var top = (screen.availHeight - height) / 2;
var left = (screen.availWidth - width) / 2;
loginWindow.moveTo(left, top)
return;
}
// The following code fixes "Specified cast is not valid" occurs in some of the IE8
// discovered by MFJames
//var thisBrowserOrTab = ieClient.Start();
var thisBrowserOrTab = false;
// original line
if (thisBrowserOrTab.NewProcessWasSpawn)
Ronan - Thursday, January 13, 2011 4:41 PM:
I had this one. See what others say.
Bill - Sunday, January 23, 2011 8:29 PM:
Without seeing it, it sounds like a client issue, not a server issue.
First, put the IIS settings back to "Scripts Only".
Second, have you confirmed your Internet Explorer settings and .NET Security Policy against the recommended settings?
If this doesn't work, please post the javascript error message, so I can reference the full text.
-Bill
sayresg - Thursday, March 17, 2011 2:37 AM:
I am having this problem as well.
I have installed Innovator on an instance with Amazon cloud services. I was very careful to follow all the installation and client configuration instructions. I would be interested in knowing more about solving this issue also.
MFJames - Monday, January 24, 2011 4:25 AM:
> First, put the IIS settings back to "Scripts Only".
OK, done that.
> Second, have you confirmed your Internet Explorer settings...
Checked, double-checked and treble-checked. "http://localhost" is allocated to the Trusted Zone. All settings for this zone are as in the Aras documentation.
> ...and .NET Security Policy
The sdns log for .NET 2.0 finishes with:
[--------------------------------------------------------]
Create new group with name "localhost/InnovatorServer" ...
[--------------------------------------------------------]
Microsoft (R) .NET Framework CasPol 2.0.50727.3053
Copyright (c) Microsoft Corporation. All rights reserved.
Added union code group with "-url" membership condition to the Machine level.
Success
...Microsoft.NETFrameworkv2.0.50727CONFIGsecurity.config contains the code group:
<CodeGroup class="UnionCodeGroup"
version="1"
PermissionSetName="FullTrust"
Attributes="Exclusive, LevelFinal"
Name="localhost/InnovatorServer">
<IMembershipCondition class="UrlMembershipCondition"
version="1"
Url="localhost/.../>
</CodeGroup>
If this doesn't work, please post the javascript error message
> If this doesn't work...
It doesn't :-(
> please post the javascript error message
Webpage error details
User Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; Deepnet Explorer; Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1) ; .NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; MS-RTC LM 8; .NET4.0C; .NET4.0E)
Timestamp: Mon, 24 Jan 2011 08:20:09 UTC
Message: Specified cast is not valid.
Line: 40
Char: 7
Code: 0
URI: localhost/.../
And the referenced line of code is:
var ieClient = document.getElementById("ieClient").object;
--> if (!ieClient)
(variable ieClient is not boolean -- adding an alert box verifies that it is undefined)
----
Martin James
MFJames - Monday, March 28, 2011 8:53 AM:
Sadly, I have reached the conclusion that may never be solved. We have two machines that are supposedly identical, and we have compared just about everything we can think of in the way of settings, software levels and Registry settings. We cannot see any differences, yet Aras works on one machine and not the other.
I have given up, and switched to a different machine. Dispte this new machine having 64-bit Windows 7, rather than the more recommended 32-bit Windows XP, Aras works perfectly on it.
--
Martin James
Gorinich - Tuesday, April 19, 2011 6:10 AM:
Have same problem with XP after Office 2007 installation =(
MFJames - Tuesday, May 10, 2011 7:13 AM:
I now have the results of some further experiments. I still haven't got the Login window to come up, but I do have a pattern of behavior that ought to be a very big clue -- if only somebody can recognize what it is trying to tell me.
I have two PCs. Both have a full Aras installation on them. Both have IIS running and are set up as Aras servers. Both are also configured to be Aras clients through IE8. Call the machines "A" and "B".
There are (only) two possible outcomes for browsing to the Aras starting URL:
-- The Login window opens correctly = Success
-- I get a blank window plus a script error "Specified cast is not valid" for the line
var ieClient = document.getElementById("ieClient").object;
in /Innovator/Client/default.aspx
= Fail
The results are:
Client "A" starting Server "A" -- Fail
Client "A" starting Server "B" -- Fail
Client "B" starting Server "B" -- Success
Client "B" starting Server "A" -- Fail
This says to me that the server end is working fine. However, there is something in the environment on "A" that prevents the reference to ieClient.DLL resolving. It is the second test that is the most interesting. Why should "A" be unable to resolve the reference when the DLL is on "B", yet a client on "B" can resolve it. (And, indeed, a client on any other machine!) Surely all I'm using on "A" is a browser and possibly .Net (which I have completely deleted and re-installed).
Does anybody have any idea what component/policy/setting/something could be broken on "A"?
--
Martin James